#ifndef _CLIENT_SERV
#define _CLIENT_SERV

#include <iostream>
#include <string>
#include <pthread.h>
#include<map>

using namespace std;

class Client{
private:
	string _name;
	int _fd;
	map<string,Client*> _followers;

	// TODO: data member our FD mutex
public:
	void getCommand(string com);
	Client(int socket, string name)
	{
		_fd=socket;
		_name=name;
		// TODO: initiate FD mutex
	}
	string getName();
	int getFd();
	void Follow(Client* cl);
	void Unfollow(string name);
	map<string,Client*>::iterator followers_begin()
	{
		return _followers.begin();
	}
	map<string,Client*>::iterator followers_end()
	{
		return _followers.end();
	}
};

#endif
